package cn.fz.singleton;

/**
 * 1.懒汉式（Lazy Initialization）
 * 懒汉式单例模式是一种按需初始化的实现方式，即在第一次使用该类时才会实例化。
 * 优点：
 * 延迟加载，只有在需要时才创建实例，避免资源浪费。
 * 缺点：
 * 在多线程环境下可能会有线程安全问题。如果两个线程同时进入 getInstance 方法，可能会创建两个实例。
 */
public class LazySingleton implements ISingletonMethod{
    // 私有静态变量，存储单例实例
    private static LazySingleton instance;

    // 私有构造方法，防止外部实例化
    private LazySingleton() {
    }

    // 提供获取实例的全局方法
    public static LazySingleton getInstance() {
        if (instance == null) {
            instance = new LazySingleton();
        }
        return instance;
    }

    @Override
    public void show(){
        System.out.println("懒汉式单例模式: LazySingleton");
    }
}
